﻿/*版权声明
 * 
 * 本 河北大学管理学院信息管理系网站 由
 * 河北大学 信管团队 开发
 * 如有任何疑问请联系开发人员
 * 
 * 项目开发者：朱胜贤、孙旭峰、水亚亚、张文元、项玥、吕芳、吴凡、谢静、李亚慧
 * 
 * 如有任何疑问请联系：河北大学信管团队
 * QQ：196396337
 * Email:zagelover@163.com
 * HomePage：http://sxgzs.com/
 * 
 * CopyRight (c) 河北大学信管团队 2010~2020
 */
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;

public partial class Admin_FriendLink_Add : System.Web.UI.Page
{
    /// <summary>页面加载事件
    /// 	<remark>2010-10-31 河北大学信管团队-项玥 </remark>
    /// </summary>
    protected void Page_Load(object sender, EventArgs e)
    {
        
        //检查用户权限
        if (Session["Uid"] == null)
        {//无权限返回登录页
            Response.Redirect("AD_login.aspx");
            return;
        }
        //情况消息框
        lblMessage.Text = "";
        //如果页面第一次加载
        if (!IsPostBack)
        {//提取URL传参
            //string ID = Request.QueryString["ID"].ToString();
            string ID;

            if (Request.QueryString["ID"].ToString() != null)
            {
                ID = Request.QueryString["ID"].ToString();
            }
            else
            {
                ID = "";
            }
            if (ID == "")
            {
                lblTitle.Text = "添加友情链接信息";
                btnCancel.Text = "清空";
            }
            //如果参数不为空
            else
            {
                lblTitle.Text = "编辑友情链接信息";
                //绑定ID
                Bind_Txt(ID);

                lblDownUrl.Text = "*如果不需要改变图片，请保持为空！";
            }
        }

    }
    private void Bind_Txt(string ID)
    {
        //定义sql语句
        string sql = "select * from Friend_Link where friID=@friID";
        //定义参数
        SqlParameter[] para = { new SqlParameter("@friID", SqlDbType.Int) };
        //参数赋值
        para[0].Value = ID;
        //取得数据
        SqlDataReader DR = DataAccess.GetReader(sql, para);
        if (DR.HasRows)
        {//如果有数据
            while (DR.Read())
            {//显示数据
                ViewState["ID"] = ID;
                friName.Text = DR["friName"].ToString();
                friInfo.Text = DR["friInfo"].ToString();
                friAddress.Text = DR["friUrl"].ToString();
                lblFileUrl.Text = DR["friLogoUrl"].ToString();
                lblFileUrl.Text = "~/Images/FriendLink/" + lblFileUrl.Text;
                fulImg.ImageUrl = lblFileUrl.Text;//通过图片地址显示图片
                friNum.Text = DR["friSort"].ToString();
                ckbIsShow.Checked = Convert.ToBoolean(DR["friIsShow"]);
                lblID.Text = ID;
            }
        }
    }
    /// <summary>响应单击按钮事件——添加或者修改记录
    /// 	<remark>2010-10-30 河北大学信管团队-项玥  </remark>
    /// </summary>
    protected void btnOK_Click(object sender, EventArgs e)
    {


        if (lblTitle.Text.Trim() == "添加友情链接信息")
        {//如果是添加信息系简介
            //判断是否上传了文件 
            if (fup.HasFile)
            {
                string fileExt = System.IO.Path.GetExtension(fup.FileName);
                if (fileExt == ".jpg" || fileExt == ".JPG" || fileExt == ".gif" || fileExt == ".GIF" || fileExt == ".png" || fileExt == ".PNG" || fileExt == ".bmp" || fileExt == ".BMP" || fileExt == ".jpeg" || fileExt == ".JPEG")
                {
                    try
                    {

                        //指定上传文件在服务器上的保存路径 
                        string savePath = Server.MapPath("~/Images/FriendLink/");
                        //检查服务器上是否存在这个物理路径，如果不存在则创建 
                        if (!System.IO.Directory.Exists(savePath))
                        {
                            //需要注意的是，需要对这个物理路径有足够的权限，否则会报错 
                            //另外，这个路径应该是在网站之下，而将网站部署在C盘却把上传文件保存在D盘 
                            System.IO.Directory.CreateDirectory(savePath);
                        }
                        savePath = savePath + "\\" + fup.FileName;
                        fup.SaveAs(savePath);//保存文件 
                        fulImg.ImageUrl = savePath;//通过图片地址显示图片

                        //不过需要注意的是，在客户端访问却需要指定的是URL地址，而不是在服务器上的物理地址 
                    }
                    catch (Exception ex)
                    {
                        Literal1.Text = "发生错误：" + ex.Message.ToString();
                    }
                }
                else
                {
                    Literal1.Text = "只允许上传图片文件！";
                    return;
                }
            }
            //定义sql语句
            string sql = "insert into Friend_Link(friName,friInfo,friUrl,friLogoUrl,friSort,friIsShow) values(@friName,@friInfo,@friUrl,@friLogoUrl,@friSort,@friIsShow)";
            //定义参数
            SqlParameter[] para = {
                    new SqlParameter("@friName", SqlDbType.NVarChar,50),
                    new SqlParameter("@friInfo", SqlDbType.NVarChar,50),
                    new SqlParameter("@friUrl", SqlDbType.NVarChar,100),
                    new SqlParameter("@friLogoUrl", SqlDbType.NVarChar,50),
                    new SqlParameter("@friSort", SqlDbType.TinyInt),
                    new SqlParameter("@friIsShow", SqlDbType.Bit)};
            //给参数赋值

            para[0].Value = friName.Text.Trim();
            para[1].Value = friInfo.Text.Trim();
            para[2].Value = friAddress.Text.Trim();
            para[3].Value = fup.FileName;
            para[4].Value = Convert.ToInt32(friNum.Text.Trim());
            para[5].Value = ckbIsShow.Checked;

            if (DataAccess.GetCount(sql, para) > 0)
            {//如果添加成功
                //显示添加成功提示并转到管理页
                Response.Write("<script>alert('添加友情链接成功！');location.href='FriendLink_Manage.aspx';</script>");
            }
            else
            {//如果添加失败
                lblMessage.Text = "添加友情链接失败";
            }
        }
        else if (lblTitle.Text.Trim() == "编辑友情链接信息")
        {
            //定义sql语句
            string sql = "update Friend_Link set friName=@friName,friInfo=@friInfo,friUrl=@friUrl,friLogoUrl=@friLogoUrl,friSort=@friSort,friIsShow=@friIsShow where friID=@friID";
            //定义参数

            SqlParameter[] para = {
                    new SqlParameter("@friName", SqlDbType.NVarChar,50),
                    new SqlParameter("@friInfo", SqlDbType.NVarChar,50),
                    new SqlParameter("@friUrl", SqlDbType.NVarChar,100),
                    new SqlParameter("@friLogoUrl", SqlDbType.NVarChar,50),
                    new SqlParameter("@friSort", SqlDbType.TinyInt),
                    new SqlParameter("@friIsShow", SqlDbType.Bit),
                    new SqlParameter("@friID", SqlDbType.Int)};
            //给参数赋值
            para[0].Value = friName.Text.Trim();
            para[1].Value = friInfo.Text.Trim();
            para[2].Value = friAddress.Text.Trim();

            para[4].Value = Convert.ToInt32(friNum.Text.Trim());
            para[5].Value = ckbIsShow.Checked;
            para[6].Value = lblID.Text.Trim();
            if (this.fup.HasFile)
            {
                try
                {
                    
                    System.IO.File.Delete(Server.MapPath(lblFileUrl.Text.ToString()));

                }
                catch (Exception ex)
                {
                    Literal1.Text = "发生错误：" + ex.Message.ToString();
                }

                string fileExt = System.IO.Path.GetExtension(fup.FileName);
                if (fileExt == ".jpg" || fileExt == ".JPG" || fileExt == ".gif" || fileExt == ".GIF" || fileExt == ".png" || fileExt == ".PNG" || fileExt == ".bmp" || fileExt == ".BMP" || fileExt == ".jpeg" || fileExt == ".JPEG")
                {
                    try
                    {

                        //指定上传文件在服务器上的保存路径 
                        string savePath = Server.MapPath("~/Images/FriendLink/");
                        //检查服务器上是否存在这个物理路径，如果不存在则创建 
                        if (!System.IO.Directory.Exists(savePath))
                        {
                            //需要注意的是，需要对这个物理路径有足够的权限，否则会报错 
                            //另外，这个路径应该是在网站之下，而将网站部署在C盘却把上传文件保存在D盘 
                            System.IO.Directory.CreateDirectory(savePath);
                        }
                        savePath = savePath + "\\" + fup.FileName;
                        fup.SaveAs(savePath);//保存文件 
                        para[3].Value = fup.FileName;//图片名称存入数据库
                        //通过图片地址显示图片

                        //不过需要注意的是，在客户端访问却需要指定的是URL地址，而不是在服务器上的物理地址 
                    }
                    catch (Exception ex)
                    {
                        Literal1.Text = "发生错误：" + ex.Message.ToString();
                    }
                }
                else
                {
                    Literal1.Text = "只允许上传图片文件！";
                    return;
                }
            }
            if (DataAccess.GetCount(sql, para) >= 0)
            {//如果修改成功
                Response.Write("<script>alert('修改友情链接成功！');location.href='FriendLink_Manage.aspx';</script>");
            }
            else
            {//如果修改失败
                lblMessage.Text = "修改信息失败";
            }
        }
    }

    /// <summary>响应单击按钮事件——清空或取消
    /// 	<remark>2010-10-30 河北大学信管团队-项玥  </remark>
    /// </summary>
    protected void btnCancel_Click(object sender, EventArgs e)
    {
        if (lblTitle.Text.Trim() == "添加友情链接信息")
        {
            friName.Text = "";
            friInfo.Text = "";
            friAddress.Text = "http://";

            friNum.Text = "0";
            ckbIsShow.Checked = true;
        }
        else if (lblTitle.Text.Trim() == "编辑友情链接信息")
        {
            //转到新管理简介管理界面
            Response.Redirect("FriendLink_Manage.aspx");
        }
    }


    //protected void bntPreview_Click(object sender, EventArgs e)
    //{
    //    fulImg.ImageUrl = "~/Images/FriendLink/" + fup.FileName; //通过图片地址显示图片

    //}
}
